package com.quectel.core.module.mobileuser.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author bob
 * @email bob.yu@quectel.com
 * @date 2023/04/18 13:36
 */
@Data
@Schema
public class MobileUserMsgDto implements Serializable {

    /**
     * id
     */
    @Schema(description = "id")
    private Long id;

    /**
     * 居民端人员id
     */
    @Schema(description = "居民端人员id")
    private Long mobileUserId;

    /**
     * 来源类型1、物业工单：工单状态+报单地址+工单大类+二级分类+描述；
     * 2、培训课程：课程名称+培训时间；
     * 3、访客审核：状态+访客+被访问人；
     * 4、安保巡检：任务名称+任务执行时间；
     * 5、设备巡检：任务名称+任务执行时间；6、公寓租赁申请；7、公寓租赁结算；8、公寓检查；9、会议通知；10、质量巡检；11、环境保洁；12、绿化养护；
     */
    @Schema(description = "")
    private Byte sourceType;

    /**
     * 针对不同的来源此处存放不同类型实体的id
     */
    @Schema(description = "针对不同的来源此处存放不同类型实体的id")
    private Long sourceId;

    /**
     * 消息标题
     */
    @Schema(description = "消息标题")
    private String title;

    /**
     * 消息内容
     */
    @Schema(description = "消息内容")
    private String content;

    /**
     * 产生时间
     */
    @Schema(description = "产生时间")
    private Date createTime;

    /**
     * 状态 0未读 1已读
     */
    @Schema(description = "状态 0未读 1已读 ")
    private Byte readStatus;

    /**
     * 读取时间
     */
    @Schema(description = "读取时间")
    private Date readTime;

    /************非数据库字段 start ************/

    /************非数据库字段 end **************/
}
